package com.virtualightning.core.processor.observer.anno;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * Anchor : Create by CimZzz
 * Time : 2021/12/28 14:26
 * 观察者主体类型键值
 */
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.SOURCE)
public @interface ObserverKey {
    /**
     * 观察主体键值
     * 如果使用 # 开头，则表示在当前结构体内寻找字段，如
     * "#id"，表示当前结构体 id 字段 toString 作为 Key
     */
    String key() default "";
}
